Overview
What is the DeepHub®?
The DeepHub® is the premier reference implementation of an omlox™ hub, a locating middleware able to run on the edge, on-premises, and in the cloud. It is compatible with the omlox™ standard - the open location standard for Industry 4.0.
The DeepHub allows for seamless tracking of any asset across different positioning technologies, and facilitates all location-aware use cases in smart production and logistics, healthcare, and retail.
The most important features at a glance:
- omlox-compliant: one standardized API across all locating technologies and vendors
- Georeferencing: transformation of local coordinates to global coordinate systems (e.g. WGS84) for all your sites
- Geofencing: define areas within your sites to trigger events every time a tracked object enters or leaves the areas
- Collision detection: identify whenever two or more tracked objects come too close to each other
To get access to a shared cloud instance, contact our Partner Management team at partners@flowcate.com.
It is also possible to easily download and run your own DeepHub instance on your personal macOS, Windows, or Linux computer. The Running the DeepHub Locally chapter covers this in detail.
If you are familiar with Docker and Git, you can skip this step. Simply clone and run the deephub-basic-setup repository and enjoy! For a comprehensive overview, refer to our Getting Started with the DeepHub video.
The Basic Entities and Mechanisms of the DeepHub®
There are four basic entities within an omlox hub:
- Zones
- Location Providers
- Trackables
- Fences
Zones and location providers represent the software abstraction of low-level hardware and infrastructure associated with physical location tracking technologies.
Trackables and fences represent the high-level entities that are used in applications that consume assets and their locations. These applications may include asset management, traffic management, warehouse management, shopfloor management, ERP, or MES.
Let's explore the low-level entities in a bit more detail.
Zones and Location Providers
Each real-time locating system connected to a DeepHub instance is represented as a zone in the DeepHub, while the devices that generate location updates, such as tags, are represented in the DeepHub as location providers.
Zones and location providers may correspond to all standard locating technologies, such as UWB, BLE, RFID, WiFi, 5G etc.
Whenever an update of a location is delivered, it gets processed by the DeepHub and events are delivered to subscribed listeners via WebSocket. These events include:
- [location_updates](./deephub/The APIs/WebsocketAPI.md#location_updates)
- [fence_events](./deephub/The APIs/WebsocketAPI.md#fence_events)
- [collision_events](./deephub/The APIs/WebsocketAPI.md#collision_events)
Refer to these videos for detailed descriptions of these two entities:
Now let's explore the high-level entities in a bit more detail:
Trackables
Applications interface with location updates, and all the other events mentioned above, via a "trackable". A trackable refers to an actual object or asset being tracked, such as a forklift, truck, or worker. It may have one or more location providers attached to it. Therefore, a location update of a location provider subsequently leads to an update of the trackable's location as well.
Trackables have a name, unique id, location, radial extrusion, or geometry. Here is a detailed [definition of a trackable](./deephub/The APIs/api.mdx#/schemas/Trackable).
Several location providers may be attached to one trackable, with each representing one locating technology. For example, in a typical industrial yard scenario, a trackable could be affixed with a GPS location provider for outdoor tracking and an UWB location provider for indoor tracking. While outside the facility, the GPS location provider would deliver location updates, thereby updating the trackable's location. While inside the facility, other locating technologies may be used. For example, BLE could be used to track a forklift, RFID tags could be attached to materials stored in a warehouse, and UWB could be used to track AGVs. Each of these locating technologies is also represented by a dedicated location provider that delivers location updates, thereby updating the trackable's location. These granular details are abstracted away for application developers - their only concern is the trackable entity itself!
Additionally, a trackable can act as a data container for metadata associated with it in the form of "custom properties". These may represent an order number, an item number, a process step, or any other vital information specifically relevant for your use case, or information that should be analyzed by the consuming high-level application.
Refer to our Overview of Trackables video for more information.
Fences
A fence, or geofence, is an entity representing a geographical area/region of special concern. Trackables and location providers entering or leaving a fence trigger fence events. These events are delivered to clients and are an integral ingredient for smart factory automation, where areas of a site are directly related to process steps. Therefore, entering or leaving an area represents a change of state within an application, such as an MES.
For a comprehensive explanation, refer to our Overview of Fences video.
Product Requirements
- The DeepHub is offered as a Docker image (orchestrated through Docker Compose) for easy installation and flexible integration with omlox-compliant applications.
- Through Docker Compose, the DeepHub can be installed and operated on all standard operating systems.
- In order to ensure uninterrupted installation, a Docker environment for running x86_64 containers is required.
- The containerized deployment of the DeepHub through Docker enables seamless integration in various scenarios, including isolated and secure environments, without the need for high-end device specifications.
Docker Engine
The DeepHub has a small digital footprint, allowing it to run on low power industry PCs and edge devices. If the DeepHub is deployed via Docker containers, it's necessary to consider the basic requirements for running Docker Engine. Refer to the latest updates and requirements for Windows and macOS.
The host system operating the DeepHub must have Docker version 20.10.10 or higher. If this version is not available for your Linux distribution out-of-the-box, you can get it directly from Docker by following these steps:
sudo apt-get install \
apt-transport-https ca-certificates \
curl gnupg lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
| sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] \
https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" \
| sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get install \
docker-ce docker-ce-cli containerd.io
Virtualization
Virtualization must be enabled in order to run the Docker containers on non-Linux operating systems. For this purpose, the following features should be enabled:
- Virtual Machine Platform
- Windows subsystem for Linux
- Hyper-V
Network
The DeepHub uses multiple network ports that must be available during installation.
Port 8081: DeepHub Docker Proxy
This port needs to be available on the host device. Docker Compose orchestration is configured on this port to facilitate the communication between the DeepHub backend with external interfaces.
Port 443: Outgoing Internet Access for License Lease & Consumption API Endpoint
This port needs to be available in order to get a lease for the DeepHub instance when contacting our license server. For more information, refer to the license mechanism section.
Pricing Model
The pricing model of the DeepHub is subscription-based. For each end-customer and project, you acquire a subscription with the necessary features and capabilities to build your tailored solution with the pricing model that suits that specific use-case and business-case:
- per site depending on the number of locating technologies you want to use and the number of zones/areas to cover
- per sqm
- per number of tracked assets
- consumption based; i.e. based on the number of processed events
You may deploy a DeepHub instance on-premise at your customer's site, or operate and maintain it yourself - this is entirely up to you.
Our DeepHub is also available as a white label product if your intention is for product bundling.
Please get in contact with us to learn more about the possibilities.
License Mechanism
The DeepHub comes with a simple license mechanism:
- Once a day, the DeepHub sends consumption and usage statistics to a Flowcate License Server on SSL/HTTPS port 443 and gets a "lease" back in response.
- The latter contains all necessary information for the DeepHub, including when to contact the license server again.
- This mechanism is always in place, regardless of whether you have an industrial-grade production system or a first trial installation.
- For every subscription, you will receive a trial license key, a development license key, and a production license key. These would have to be defined in the DeepHub configuration.
You get even more
As a partner, you'll get access to the latest versions of the DeepHub via a Docker repository from which you can pull the latest images. Additionally, you'll get access to our online support tool, enabling you to request support, send feature requests, access the latest information on upcoming releases, share thoughts and insights in the DeepHub community, and get all the latest onboarding material.
Get in touch with our Partner Management team at partners@flowcate.com and start your journey into the Deep Universe.